Group Predictions

Row

Win percentage for the week

Season Win Percentage

Games Correct

138

Games Picked

195

Number of predictions

111

Row

This Week’s Predictions
Game Prediction Winner Correct Correct Votes Correct Percent
1 Detroit Lions Detroit Lions Yes 108 0.9730
2 Dallas Cowboys Dallas Cowboys Yes 98 0.8829
3 Green Bay Packers Green Bay Packers Yes 94 0.8468
4 Kansas City Chiefs Kansas City Chiefs Yes 109 0.9820
5 Houston Texans Houston Texans Yes 108 0.9730
6 Minnesota Vikings Minnesota Vikings Yes 99 0.8919
7 Indianapolis Colts Indianapolis Colts Yes 92 0.8288
8 Los Angeles Chargers Los Angeles Chargers Yes 80 0.7207
9 Pittsburgh Steelers Pittsburgh Steelers Yes 78 0.7027
10 Seattle Seahawks Seattle Seahawks Yes 93 0.8378
11 Washington Commanders Washington Commanders Yes 107 0.9640
12 Los Angeles Rams Los Angeles Rams Yes 89 0.8018
13 Tampa Bay Buccaneers Tampa Bay Buccaneers Yes 108 0.9730
14 Baltimore Ravens Philadelphia Eagles No 53 0.4775
15 Buffalo Bills Buffalo Bills Yes 105 0.9459
16 Denver Broncos Denver Broncos Yes 103 0.9279

Individual Predictions

row

Individual Table

Individual Results
Week 13
Name Weekly # Correct Percent Weeks Picked Season Percent Adj Season Percent Season Trend
Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10 Week 11 Week 12 Week 13
Brittany Pillar NA NA NA NA NA 10 12 NA NA 10 11 10 16 1.0000 6 0.8023 0.3703
Aubrey Conn 13 7 10 9 8 12 12 9 13 9 10 11 16 1.0000 13 0.7128 0.7128
Randolph Tidd 11 7 8 12 NA 12 11 12 13 9 11 7 16 1.0000 12 0.7127 0.6579
Marc Agne 14 7 9 13 6 13 10 9 12 10 10 7 16 1.0000 13 0.6974 0.6974
Christopher Sims 11 9 10 8 7 10 12 14 11 9 8 9 16 1.0000 13 0.6872 0.6872
Bradley Hobson 13 7 8 11 7 13 10 10 11 8 NA 10 16 1.0000 12 0.6851 0.6324
Brian Hollmann NA NA NA 8 8 10 10 11 9 8 12 8 16 1.0000 10 0.6803 0.5233
Patrick Tynan 12 8 7 9 8 12 NA 12 12 10 10 6 16 1.0000 12 0.6778 0.6257
Jeremy Stieler 11 9 6 11 6 13 11 11 11 9 9 8 16 1.0000 13 0.6718 0.6718
Kevin Buettner 12 8 8 10 7 11 10 9 10 10 10 8 16 1.0000 13 0.6615 0.6615
Stephen Bush 9 7 4 10 9 13 13 9 10 10 8 9 16 1.0000 13 0.6513 0.6513
Kamar Morgan 12 6 8 5 8 12 9 12 10 8 10 10 16 1.0000 13 0.6462 0.6462
Michael Moore 11 6 7 7 8 12 NA 9 9 NA 12 9 16 1.0000 11 0.6386 0.5404
Trevor Macgavin 12 7 10 8 8 8 9 7 10 7 11 10 16 1.0000 13 0.6308 0.6308
Joshua Tracey 12 5 8 6 7 NA 9 13 10 7 10 9 16 1.0000 12 0.6188 0.5712
Gary Lawrence 10 6 5 5 7 9 9 10 9 9 11 8 16 1.0000 13 0.5846 0.5846
Matthew Blair NA NA NA NA NA 11 10 12 10 9 11 8 15 0.9375 8 0.7350 0.4523
Chris Papageorge 14 8 10 11 8 12 12 12 11 8 9 7 15 0.9375 13 0.7026 0.7026
Chester Todd 13 8 8 8 9 13 13 10 9 9 11 9 15 0.9375 13 0.6923 0.6923
Bryson Scott 10 9 7 NA 7 12 11 12 10 9 NA 9 15 0.9375 11 0.6727 0.5692
William Schouviller 12 7 9 9 11 13 10 9 NA 7 11 8 15 0.9375 12 0.6722 0.6205
Gregory Brown 15 7 6 9 8 12 9 9 13 9 10 9 15 0.9375 13 0.6718 0.6718
Daniel Baller 14 6 9 8 7 9 10 12 10 10 10 10 15 0.9375 13 0.6667 0.6667
Shawn Carden 10 9 10 10 8 11 10 11 11 9 8 8 15 0.9375 13 0.6667 0.6667
Darryle Sellers 11 11 6 8 9 11 9 10 12 9 12 7 15 0.9375 13 0.6667 0.6667
Thomas Brenstuhl 9 8 NA 6 7 9 10 13 11 9 13 9 15 0.9375 12 0.6648 0.6137
Nicole Dike 13 7 8 10 7 10 10 12 10 9 10 8 15 0.9375 13 0.6615 0.6615
Walter Archambo 8 8 7 9 6 12 11 11 12 10 10 9 15 0.9375 13 0.6564 0.6564
Earl Dixon 10 9 6 9 9 NA 11 10 9 9 10 10 15 0.9375 12 0.6464 0.5967
Scott Lefton 10 8 8 7 7 11 11 10 11 10 10 8 15 0.9375 13 0.6462 0.6462
Jennifer Arty 10 7 9 7 7 12 8 12 11 9 10 8 15 0.9375 13 0.6410 0.6410
Zechariah Ziebarth 8 8 8 10 5 10 10 11 11 NA 12 8 15 0.9375 12 0.6409 0.5916
Tara Bridgett 11 8 8 8 NA 9 NA 10 10 NA NA NA 15 0.9375 8 0.6320 0.3889
Cade Martinez 10 7 8 8 6 11 11 9 10 10 9 8 15 0.9375 13 0.6256 0.6256
Jeffrey Zornes 9 11 6 8 7 10 9 11 9 10 NA 8 15 0.9375 12 0.6243 0.5763
Desmond Jenkins 10 7 7 NA 7 12 8 NA NA NA NA NA 15 0.9375 7 0.6168 0.3321
Jonathan Smith 11 NA 4 10 7 NA 8 11 10 7 9 7 15 0.9375 11 0.6000 0.5077
Jack Wheeler 9 6 5 10 8 NA 9 9 10 8 10 7 15 0.9375 12 0.5856 0.5406
Robert Lynch 6 9 8 6 9 7 7 12 NA 9 7 8 15 0.9375 12 0.5722 0.5282
Michael Pacifico 13 8 7 9 9 12 12 10 14 9 11 10 14 0.8750 13 0.7077 0.7077
Nathan Brown 13 8 9 11 9 NA 10 11 14 9 10 10 14 0.8750 12 0.7072 0.6528
Bruce Williams 13 9 10 8 9 13 12 10 NA 10 10 9 14 0.8750 12 0.7056 0.6513
Heather Kohler 12 NA 7 12 9 11 NA 12 NA 8 9 10 14 0.8750 10 0.6980 0.5369
Randy Dick 11 7 8 8 9 14 10 10 13 11 10 9 14 0.8750 13 0.6872 0.6872
Pamela Augustine 14 9 9 NA 7 11 9 NA 10 NA 10 9 14 0.8750 10 0.6846 0.5266
Matthew Schultz 13 10 9 8 9 9 9 12 11 8 11 10 14 0.8750 13 0.6821 0.6821
Heather Ellenberger 13 8 7 8 7 12 11 11 13 9 9 10 14 0.8750 13 0.6769 0.6769
Anthony Bloss 13 8 8 11 8 13 11 11 9 7 10 9 14 0.8750 13 0.6769 0.6769
Philip Driskill 12 7 8 10 8 NA 13 11 10 NA NA 9 14 0.8750 10 0.6667 0.5128
Daniel Halse 12 6 8 10 7 13 9 11 11 11 NA 8 14 0.8750 12 0.6630 0.6120
Robert Sokol 10 8 NA NA 6 9 9 13 12 9 10 8 14 0.8750 11 0.6626 0.5607
Karen Coleman 13 6 NA 11 9 9 10 9 11 8 9 9 14 0.8750 12 0.6592 0.6085
Daniel Major 8 10 11 6 8 11 NA 10 10 10 11 9 14 0.8750 12 0.6556 0.6052
Ryan Baum 14 4 9 10 9 NA 10 10 11 10 NA 8 14 0.8750 11 0.6527 0.5523
David Plate 10 8 8 8 9 NA NA NA 13 10 8 9 14 0.8750 10 0.6467 0.4975
Jeffrey Rudderforth 11 11 10 9 6 7 10 11 12 9 8 8 14 0.8750 13 0.6462 0.6462
Edward Ford 9 7 6 10 5 10 10 13 11 9 12 10 14 0.8750 13 0.6462 0.6462
Richard Beeghley 11 7 6 11 7 14 10 10 10 8 9 9 14 0.8750 13 0.6462 0.6462
Anthony Brinson 11 7 NA 9 10 11 9 12 6 NA NA 8 14 0.8750 10 0.6424 0.4942
Paul Seitz 11 9 9 NA 8 10 11 NA NA 7 8 8 14 0.8750 10 0.6419 0.4938
David Humes 10 9 8 11 5 8 12 8 12 11 11 6 14 0.8750 13 0.6410 0.6410
Montee Brown 10 6 8 7 8 14 11 10 8 10 10 9 14 0.8750 13 0.6410 0.6410
Michael Branson 9 8 8 9 8 11 9 11 10 9 11 7 14 0.8750 13 0.6359 0.6359
Brian Patterson 11 6 9 9 6 NA 9 13 NA 9 12 7 14 0.8750 11 0.6325 0.5352
Keisha Vasquez 8 7 9 9 11 11 9 12 8 8 NA NA 14 0.8750 11 0.6310 0.5339
Cheryl Brown 11 6 9 8 8 10 NA 9 8 10 11 9 14 0.8750 12 0.6278 0.5795
Matthew Olguin 10 8 9 9 7 12 11 11 9 7 8 5 14 0.8750 13 0.6154 0.6154
Bunnaro Sun 12 5 8 11 6 8 9 9 12 8 8 NA 14 0.8750 12 0.6044 0.5579
Michael Linder 11 9 9 NA NA 12 10 11 10 NA 11 NA 13 0.8125 9 0.6957 0.4816
David Dupree 13 8 10 9 7 11 11 11 12 NA 9 8 13 0.8125 12 0.6740 0.6222
Brayant Rivera 10 8 9 8 6 13 11 10 12 9 11 10 13 0.8125 13 0.6667 0.6667
Kevin Kehoe 13 7 9 10 8 13 12 11 9 8 8 8 13 0.8125 13 0.6615 0.6615
Jason Schattel 13 7 6 9 10 11 9 10 11 9 10 10 13 0.8125 13 0.6564 0.6564
Pablo Burgosramos 9 5 8 9 5 14 12 12 12 7 11 10 13 0.8125 13 0.6513 0.6513
Nahir Shepard 11 8 10 8 6 12 8 12 9 9 11 10 13 0.8125 13 0.6513 0.6513
George Mancini 11 8 6 NA 8 6 12 NA 11 9 11 10 13 0.8125 11 0.6442 0.5451
Thomas Mccoy 10 7 6 8 9 11 11 10 12 10 10 8 13 0.8125 13 0.6410 0.6410
Antonio Mitchell 11 7 8 9 9 11 10 11 10 8 8 9 13 0.8125 13 0.6359 0.6359
Karen Richardson 10 9 7 9 11 8 8 12 8 10 9 9 13 0.8125 13 0.6308 0.6308
Ramar Williams 10 8 7 11 8 11 11 10 8 8 9 8 13 0.8125 13 0.6256 0.6256
Amy Asberry 11 8 6 10 NA 12 9 NA 9 8 NA NA 13 0.8125 9 0.6232 0.4314
Christopher Mulcahy 11 9 7 8 NA 8 9 9 10 9 10 9 13 0.8125 12 0.6188 0.5712
Kristen White 14 7 9 9 8 9 9 8 8 9 9 8 13 0.8125 13 0.6154 0.6154
Rachel Follo 15 8 6 6 9 7 10 11 9 9 10 7 13 0.8125 13 0.6154 0.6154
Megan Fitzgerald 8 11 9 10 NA NA 8 10 NA NA NA 7 13 0.8125 8 0.6129 0.3772
Melissa Printup 8 9 9 6 10 10 10 10 7 10 9 8 13 0.8125 13 0.6103 0.6103
Wayne Schofield 7 5 9 5 7 7 11 11 10 8 13 10 13 0.8125 13 0.5949 0.5949
Kyle May 10 8 5 6 8 NA 12 10 9 8 8 8 13 0.8125 12 0.5801 0.5355
Steven Maisonneuve NA NA NA NA 11 10 11 12 11 8 NA 10 12 0.7500 8 0.7265 0.4471
Robert Gelo 14 8 9 9 8 13 13 11 12 10 10 9 12 0.7500 13 0.7077 0.7077
Keven Talbert 10 7 9 11 9 14 13 9 9 11 10 10 12 0.7500 13 0.6872 0.6872
Nicholas Cinco 12 8 NA NA 6 11 11 12 11 11 8 9 12 0.7500 11 0.6810 0.5762
George Sweet 13 9 6 10 11 9 11 11 12 7 10 11 12 0.7500 13 0.6769 0.6769
Shaun Dahl 14 7 9 11 10 10 10 8 9 11 8 11 12 0.7500 13 0.6667 0.6667
Rafael Torres 12 9 8 7 8 10 12 10 12 11 11 7 12 0.7500 13 0.6615 0.6615
George Brown 14 7 8 7 6 11 10 12 9 12 11 8 12 0.7500 13 0.6513 0.6513
Ryan Cvik 10 8 9 11 9 11 11 13 10 7 7 9 12 0.7500 13 0.6513 0.6513
Diance Durand 9 9 12 7 8 10 9 11 11 7 9 8 12 0.7500 13 0.6256 0.6256
Jonathon Leslein 10 8 7 10 8 12 10 10 8 10 7 10 12 0.7500 13 0.6256 0.6256
Vincent Scannelli 11 7 7 11 8 8 11 12 9 8 9 7 12 0.7500 13 0.6154 0.6154
Marcus Evans 11 8 NA 8 7 10 7 9 10 6 11 8 12 0.7500 12 0.5978 0.5518
Anthony Rockemore 13 8 6 8 7 NA 8 NA NA 9 9 9 12 0.7500 10 0.5933 0.4564
Michael Moss 13 8 8 8 10 13 8 9 11 9 10 6 11 0.6875 13 0.6359 0.6359
Steward Hogans 10 7 10 NA NA NA NA 10 13 8 8 9 11 0.6875 9 0.6324 0.4378
James Small 12 NA 9 10 8 10 9 9 10 10 NA 6 11 0.6875 11 0.6303 0.5333
Kenneth Nielsen 13 8 7 NA 8 9 11 10 NA NA NA NA 11 0.6875 8 0.6260 0.3852
Yiming Hu 12 NA 7 7 6 8 12 9 NA 9 12 8 11 0.6875 11 0.6159 0.5211
Robert Martin 7 NA 9 8 8 8 7 NA 8 7 7 9 11 0.6875 11 0.5460 0.4620
Sheryl Claiborne-Smith 11 7 NA NA NA 7 7 10 7 7 9 9 10 0.6250 10 0.5638 0.4337
Ashley Johnson 9 NA 6 NA 6 NA NA NA NA NA 5 9 8 0.5000 6 0.4831 0.2230
Andrew Gray 5 8 9 7 NA NA 7 9 7 11 8 6 5 0.3125 11 0.4910 0.4155
Clayton Grimes 14 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.8750 0.0673
Tanaysa Henderson NA NA NA NA NA 12 NA NA NA NA NA NA NA 0.0000 1 0.8571 0.0659
Wallace Savage 12 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.7500 0.0577
Brian Holder 12 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.7500 0.0577
Sandra Carter 12 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.7500 0.0577
Ryan Wiggins NA NA NA NA NA NA NA NA 11 NA NA NA NA 0.0000 1 0.7333 0.0564
Robert Cunningham 14 9 10 12 8 12 11 11 12 9 11 10 NA 0.0000 12 0.7207 0.6653
Jeremy Krammes 12 NA NA NA NA NA NA 10 NA 10 NA NA NA 0.0000 3 0.6957 0.1605
Terrence Lee 11 NA NA NA NA NA NA NA NA NA NA 9 NA 0.0000 2 0.6897 0.1061
Daniel Gray 11 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.6875 0.0529
Jeremy Mounce 12 8 8 NA 10 12 NA NA NA 10 10 NA NA 0.0000 7 0.6731 0.3624
Erik Neumann 12 8 9 9 7 13 10 11 12 9 10 NA NA 0.0000 11 0.6627 0.5607
Travis Delagardelle 11 12 10 8 6 11 12 11 11 9 9 NA NA 0.0000 11 0.6627 0.5607
Jennifer Bouland 13 8 10 7 8 11 10 11 9 9 12 10 NA 0.0000 12 0.6592 0.6085
Clevante Granville 9 11 NA NA 5 11 11 9 10 11 9 10 NA 0.0000 10 0.6531 0.5024
George Hall 12 NA 8 NA NA NA NA NA NA 10 NA NA NA 0.0000 3 0.6522 0.1505
Michelle Fraterrigo 11 8 9 9 7 11 12 12 11 8 8 10 NA 0.0000 12 0.6480 0.5982
Paul Presti 12 8 9 12 7 11 8 10 NA 10 9 NA NA 0.0000 10 0.6358 0.4891
Brandon Parks 12 6 9 9 6 13 NA NA 12 10 10 6 NA 0.0000 10 0.6284 0.4834
Jordan Forwood 11 8 6 11 NA 13 NA 10 NA NA NA NA NA 0.0000 6 0.6277 0.2897
Jared Kaanga 11 9 9 8 7 10 9 11 13 9 9 7 NA 0.0000 12 0.6257 0.5776
Noah Gosswiller 8 7 NA 10 8 NA 10 11 10 10 10 8 NA 0.0000 10 0.6174 0.4749
Darvin Graham 12 7 6 9 8 11 9 NA 10 9 9 10 NA 0.0000 11 0.6135 0.5191
David Hadley 13 10 8 NA 8 NA 8 NA NA NA NA NA NA 0.0000 5 0.6104 0.2348
Nicholas Nguyen 11 8 5 8 7 12 11 9 10 9 10 9 NA 0.0000 12 0.6089 0.5621
Terry Hardison 13 8 6 7 4 11 10 12 11 9 11 7 NA 0.0000 12 0.6089 0.5621
Jason Jackson 12 7 5 6 5 12 9 11 10 10 12 9 NA 0.0000 12 0.6034 0.5570
Louie Renew 9 8 12 4 10 8 8 11 11 8 10 9 NA 0.0000 12 0.6034 0.5570
Derrick Elam 13 9 8 11 7 10 8 9 NA NA NA 7 NA 0.0000 9 0.6029 0.4174
Wayne Gokey 13 7 NA 11 NA NA 8 NA 8 NA NA NA NA 0.0000 5 0.6026 0.2318
Jonathan Knight 13 10 9 6 7 NA 11 NA NA NA NA NA NA 0.0000 6 0.6022 0.2779
Kevin Green 11 9 NA 8 7 12 NA 8 NA NA NA NA NA 0.0000 6 0.5978 0.2759
Ryan Shipley 11 6 10 8 5 9 11 NA 10 NA 9 10 NA 0.0000 10 0.5973 0.4595
Jeffrey Dusza 11 8 NA NA NA NA NA NA NA NA NA NA NA 0.0000 2 0.5938 0.0914
Cherylynn Vidal 13 9 8 8 NA NA NA NA NA NA NA NA NA 0.0000 4 0.5938 0.1827
Adam Konkle 10 9 NA NA NA NA NA NA NA NA NA NA NA 0.0000 2 0.5938 0.0914
Jose Torres Mendoza 12 8 8 8 NA NA 8 9 10 11 8 7 NA 0.0000 10 0.5894 0.4534
Thomas Cho 10 6 NA 11 7 12 NA 8 9 NA NA NA NA 0.0000 7 0.5888 0.3170
Ronald Schmidt 10 10 5 9 6 8 12 10 NA 7 9 10 NA 0.0000 11 0.5854 0.4953
Jason Miranda 10 7 8 NA 9 11 8 NA NA NA NA NA NA 0.0000 6 0.5824 0.2688
Jennifer Wilson 11 9 10 6 NA 7 11 NA NA NA NA NA NA 0.0000 6 0.5806 0.2680
Akilah Gamble 9 NA 12 9 6 8 12 6 NA 8 NA 7 NA 0.0000 9 0.5746 0.3978
Joseph Martin 10 7 8 8 8 10 9 NA NA NA NA NA NA 0.0000 7 0.5607 0.3019
Min Choi 10 NA 7 NA 8 7 NA 10 NA NA NA NA NA 0.0000 5 0.5526 0.2125
Richard Conkle 7 6 6 8 7 10 12 11 9 NA 8 NA NA 0.0000 10 0.5526 0.4251
Steven Webster 7 7 9 6 7 9 NA 11 NA 8 10 8 NA 0.0000 10 0.5503 0.4233
Lawrence Thuotte 9 5 12 NA 8 NA NA NA NA NA NA NA NA 0.0000 4 0.5484 0.1687
Donald Park 9 NA 6 NA NA 10 NA NA NA NA NA NA NA 0.0000 3 0.5435 0.1254
Monte Henderson 9 8 NA NA NA NA NA NA NA NA NA NA NA 0.0000 2 0.5312 0.0817
David Kim 9 8 NA NA NA NA NA NA NA NA NA NA NA 0.0000 2 0.5312 0.0817
Gabriel Quinones 10 7 6 9 NA 11 8 7 NA NA NA 6 NA 0.0000 8 0.5246 0.3228
Jamie Ainsleigh-Wong 9 8 9 9 8 5 NA NA NA NA NA NA NA 0.0000 6 0.5217 0.2408
Jay Kelly 10 9 7 7 5 10 7 NA NA NA NA NA NA 0.0000 7 0.5140 0.2768
Zachary Brosemer 8 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.5000 0.0385
Antonio Chapa 8 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.5000 0.0385
Vincent Kandian 9 8 8 7 NA NA NA NA NA NA NA NA NA 0.0000 4 0.5000 0.1538
Ashlyn Dortch 9 NA NA 8 NA 5 9 6 NA NA NA NA NA 0.0000 5 0.4805 0.1848
Gabrieal Feiling 10 NA 5 NA NA NA NA NA NA NA NA NA NA 0.0000 2 0.4688 0.0721
Jasprin Smith 6 NA NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.3750 0.0288
Robert Epps NA 6 NA NA NA NA NA NA NA NA NA NA NA 0.0000 1 0.3750 0.0288

Season Leaderboard

Season Leaderboard (Season Percent)
Week 13
Season Rank Name Donuts Won Weeks Picked Season Percent Adj Season Percent Season Trend
1 Clayton Grimes 0 1 0.8750 0.0673
2 Tanaysa Henderson 0 1 0.8571 0.0659
3 Brittany Pillar 1 6 0.8023 0.3703
4 Brian Holder 0 1 0.7500 0.0577
4 Sandra Carter 0 1 0.7500 0.0577
4 Wallace Savage 0 1 0.7500 0.0577
7 Matthew Blair 0 8 0.7350 0.4523
8 Ryan Wiggins 0 1 0.7333 0.0564
9 Steven Maisonneuve 1 8 0.7265 0.4471
10 Robert Cunningham 0 12 0.7207 0.6653
11 Aubrey Conn 2 13 0.7128 0.7128
12 Randolph Tidd 1 12 0.7127 0.6579
13 Michael Pacifico 1 13 0.7077 0.7077
13 Robert Gelo 1 13 0.7077 0.7077
15 Nathan Brown 1 12 0.7072 0.6528
16 Bruce Williams 0 12 0.7056 0.6513
17 Chris Papageorge 0 13 0.7026 0.7026
18 Heather Kohler 0 10 0.6980 0.5369
19 Marc Agne 2 13 0.6974 0.6974
20 Jeremy Krammes 0 3 0.6957 0.1605
20 Michael Linder 0 9 0.6957 0.4816
22 Chester Todd 1 13 0.6923 0.6923
23 Terrence Lee 0 2 0.6897 0.1061
24 Daniel Gray 0 1 0.6875 0.0529
25 Christopher Sims 2 13 0.6872 0.6872
25 Keven Talbert 2 13 0.6872 0.6872
25 Randy Dick 1 13 0.6872 0.6872
28 Bradley Hobson 1 12 0.6851 0.6324
29 Pamela Augustine 0 10 0.6846 0.5266
30 Matthew Schultz 0 13 0.6821 0.6821
31 Nicholas Cinco 0 11 0.6810 0.5762
32 Brian Hollmann 1 10 0.6803 0.5233
33 Patrick Tynan 1 12 0.6778 0.6257
34 Anthony Bloss 0 13 0.6769 0.6769
34 George Sweet 2 13 0.6769 0.6769
34 Heather Ellenberger 0 13 0.6769 0.6769
37 David Dupree 0 12 0.6740 0.6222
38 Jeremy Mounce 0 7 0.6731 0.3624
39 Bryson Scott 0 11 0.6727 0.5692
40 William Schouviller 1 12 0.6722 0.6205
41 Gregory Brown 1 13 0.6718 0.6718
41 Jeremy Stieler 1 13 0.6718 0.6718
43 Brayant Rivera 0 13 0.6667 0.6667
43 Daniel Baller 0 13 0.6667 0.6667
43 Darryle Sellers 0 13 0.6667 0.6667
43 Philip Driskill 1 10 0.6667 0.5128
43 Shaun Dahl 1 13 0.6667 0.6667
43 Shawn Carden 0 13 0.6667 0.6667
49 Thomas Brenstuhl 1 12 0.6648 0.6137
50 Daniel Halse 0 12 0.6630 0.6120
51 Erik Neumann 0 11 0.6627 0.5607
51 Travis Delagardelle 1 11 0.6627 0.5607
53 Robert Sokol 0 11 0.6626 0.5607
54 Kevin Buettner 1 13 0.6615 0.6615
54 Kevin Kehoe 0 13 0.6615 0.6615
54 Nicole Dike 0 13 0.6615 0.6615
54 Rafael Torres 0 13 0.6615 0.6615
58 Jennifer Bouland 0 12 0.6592 0.6085
58 Karen Coleman 0 12 0.6592 0.6085
60 Jason Schattel 0 13 0.6564 0.6564
60 Walter Archambo 0 13 0.6564 0.6564
62 Daniel Major 0 12 0.6556 0.6052
63 Clevante Granville 0 10 0.6531 0.5024
64 Ryan Baum 0 11 0.6527 0.5523
65 George Hall 0 3 0.6522 0.1505
66 George Brown 1 13 0.6513 0.6513
66 Nahir Shepard 0 13 0.6513 0.6513
66 Pablo Burgosramos 1 13 0.6513 0.6513
66 Ryan Cvik 0 13 0.6513 0.6513
66 Stephen Bush 2 13 0.6513 0.6513
71 Michelle Fraterrigo 0 12 0.6480 0.5982
72 David Plate 0 10 0.6467 0.4975
73 Earl Dixon 0 12 0.6464 0.5967
74 Edward Ford 0 13 0.6462 0.6462
74 Jeffrey Rudderforth 0 13 0.6462 0.6462
74 Kamar Morgan 1 13 0.6462 0.6462
74 Richard Beeghley 1 13 0.6462 0.6462
74 Scott Lefton 0 13 0.6462 0.6462
79 George Mancini 0 11 0.6442 0.5451
80 Anthony Brinson 0 10 0.6424 0.4942
81 Paul Seitz 0 10 0.6419 0.4938
82 David Humes 0 13 0.6410 0.6410
82 Jennifer Arty 0 13 0.6410 0.6410
82 Montee Brown 1 13 0.6410 0.6410
82 Thomas Mccoy 0 13 0.6410 0.6410
86 Zechariah Ziebarth 0 12 0.6409 0.5916
87 Michael Moore 1 11 0.6386 0.5404
88 Antonio Mitchell 0 13 0.6359 0.6359
88 Michael Branson 0 13 0.6359 0.6359
88 Michael Moss 0 13 0.6359 0.6359
91 Paul Presti 0 10 0.6358 0.4891
92 Brian Patterson 0 11 0.6325 0.5352
93 Steward Hogans 0 9 0.6324 0.4378
94 Tara Bridgett 0 8 0.6320 0.3889
95 Keisha Vasquez 1 11 0.6310 0.5339
96 Karen Richardson 1 13 0.6308 0.6308
96 Trevor Macgavin 1 13 0.6308 0.6308
98 James Small 0 11 0.6303 0.5333
99 Brandon Parks 0 10 0.6284 0.4834
100 Cheryl Brown 0 12 0.6278 0.5795
101 Jordan Forwood 0 6 0.6277 0.2897
102 Kenneth Nielsen 0 8 0.6260 0.3852
103 Jared Kaanga 0 12 0.6257 0.5776
104 Cade Martinez 0 13 0.6256 0.6256
104 Diance Durand 1 13 0.6256 0.6256
104 Jonathon Leslein 0 13 0.6256 0.6256
104 Ramar Williams 0 13 0.6256 0.6256
108 Jeffrey Zornes 0 12 0.6243 0.5763
109 Amy Asberry 0 9 0.6232 0.4314
110 Christopher Mulcahy 0 12 0.6188 0.5712
110 Joshua Tracey 1 12 0.6188 0.5712
112 Noah Gosswiller 0 10 0.6174 0.4749
113 Desmond Jenkins 0 7 0.6168 0.3321
114 Yiming Hu 0 11 0.6159 0.5211
115 Kristen White 0 13 0.6154 0.6154
115 Matthew Olguin 0 13 0.6154 0.6154
115 Rachel Follo 1 13 0.6154 0.6154
115 Vincent Scannelli 0 13 0.6154 0.6154
119 Darvin Graham 0 11 0.6135 0.5191
120 Megan Fitzgerald 0 8 0.6129 0.3772
121 David Hadley 0 5 0.6104 0.2348
122 Melissa Printup 0 13 0.6103 0.6103
123 Nicholas Nguyen 0 12 0.6089 0.5621
123 Terry Hardison 0 12 0.6089 0.5621
125 Bunnaro Sun 0 12 0.6044 0.5579
126 Jason Jackson 0 12 0.6034 0.5570
126 Louie Renew 1 12 0.6034 0.5570
128 Derrick Elam 0 9 0.6029 0.4174
129 Wayne Gokey 0 5 0.6026 0.2318
130 Jonathan Knight 0 6 0.6022 0.2779
131 Jonathan Smith 0 11 0.6000 0.5077
132 Kevin Green 0 6 0.5978 0.2759
132 Marcus Evans 0 12 0.5978 0.5518
134 Ryan Shipley 0 10 0.5973 0.4595
135 Wayne Schofield 1 13 0.5949 0.5949
136 Adam Konkle 0 2 0.5938 0.0914
136 Cherylynn Vidal 0 4 0.5938 0.1827
136 Jeffrey Dusza 0 2 0.5938 0.0914
139 Anthony Rockemore 0 10 0.5933 0.4564
140 Jose Torres Mendoza 0 10 0.5894 0.4534
141 Thomas Cho 0 7 0.5888 0.3170
142 Jack Wheeler 0 12 0.5856 0.5406
143 Ronald Schmidt 0 11 0.5854 0.4953
144 Gary Lawrence 1 13 0.5846 0.5846
145 Jason Miranda 0 6 0.5824 0.2688
146 Jennifer Wilson 0 6 0.5806 0.2680
147 Kyle May 0 12 0.5801 0.5355
148 Akilah Gamble 1 9 0.5746 0.3978
149 Robert Lynch 0 12 0.5722 0.5282
150 Sheryl Claiborne-Smith 0 10 0.5638 0.4337
151 Joseph Martin 0 7 0.5607 0.3019
152 Min Choi 0 5 0.5526 0.2125
152 Richard Conkle 0 10 0.5526 0.4251
154 Steven Webster 0 10 0.5503 0.4233
155 Lawrence Thuotte 1 4 0.5484 0.1687
156 Robert Martin 0 11 0.5460 0.4620
157 Donald Park 0 3 0.5435 0.1254
158 David Kim 0 2 0.5312 0.0817
158 Monte Henderson 0 2 0.5312 0.0817
160 Gabriel Quinones 0 8 0.5246 0.3228
161 Jamie Ainsleigh-Wong 0 6 0.5217 0.2408
162 Jay Kelly 0 7 0.5140 0.2768
163 Antonio Chapa 0 1 0.5000 0.0385
163 Vincent Kandian 0 4 0.5000 0.1538
163 Zachary Brosemer 0 1 0.5000 0.0385
166 Andrew Gray 0 11 0.4910 0.4155
167 Ashley Johnson 0 6 0.4831 0.2230
168 Ashlyn Dortch 0 5 0.4805 0.1848
169 Gabrieal Feiling 0 2 0.4688 0.0721
170 Jasprin Smith 0 1 0.3750 0.0288
170 Robert Epps 0 1 0.3750 0.0288

Adjusted Season Leaderboard

Season Leaderboard (Adjusted Season Percent)
Week 13
Season Rank Name Donuts Won Weeks Picked Season Percent Adj Season Percent Season Trend
1 Aubrey Conn 2 13 0.7128 0.7128
2 Michael Pacifico 1 13 0.7077 0.7077
2 Robert Gelo 1 13 0.7077 0.7077
4 Chris Papageorge 0 13 0.7026 0.7026
5 Marc Agne 2 13 0.6974 0.6974
6 Chester Todd 1 13 0.6923 0.6923
7 Christopher Sims 2 13 0.6872 0.6872
7 Keven Talbert 2 13 0.6872 0.6872
7 Randy Dick 1 13 0.6872 0.6872
10 Matthew Schultz 0 13 0.6821 0.6821
11 Anthony Bloss 0 13 0.6769 0.6769
11 George Sweet 2 13 0.6769 0.6769
11 Heather Ellenberger 0 13 0.6769 0.6769
14 Gregory Brown 1 13 0.6718 0.6718
14 Jeremy Stieler 1 13 0.6718 0.6718
16 Brayant Rivera 0 13 0.6667 0.6667
16 Daniel Baller 0 13 0.6667 0.6667
16 Darryle Sellers 0 13 0.6667 0.6667
16 Shaun Dahl 1 13 0.6667 0.6667
16 Shawn Carden 0 13 0.6667 0.6667
21 Robert Cunningham 0 12 0.7207 0.6653
22 Kevin Buettner 1 13 0.6615 0.6615
22 Kevin Kehoe 0 13 0.6615 0.6615
22 Nicole Dike 0 13 0.6615 0.6615
22 Rafael Torres 0 13 0.6615 0.6615
26 Randolph Tidd 1 12 0.7127 0.6579
27 Jason Schattel 0 13 0.6564 0.6564
27 Walter Archambo 0 13 0.6564 0.6564
29 Nathan Brown 1 12 0.7072 0.6528
30 Bruce Williams 0 12 0.7056 0.6513
30 George Brown 1 13 0.6513 0.6513
30 Nahir Shepard 0 13 0.6513 0.6513
30 Pablo Burgosramos 1 13 0.6513 0.6513
30 Ryan Cvik 0 13 0.6513 0.6513
30 Stephen Bush 2 13 0.6513 0.6513
36 Edward Ford 0 13 0.6462 0.6462
36 Jeffrey Rudderforth 0 13 0.6462 0.6462
36 Kamar Morgan 1 13 0.6462 0.6462
36 Richard Beeghley 1 13 0.6462 0.6462
36 Scott Lefton 0 13 0.6462 0.6462
41 David Humes 0 13 0.6410 0.6410
41 Jennifer Arty 0 13 0.6410 0.6410
41 Montee Brown 1 13 0.6410 0.6410
41 Thomas Mccoy 0 13 0.6410 0.6410
45 Antonio Mitchell 0 13 0.6359 0.6359
45 Michael Branson 0 13 0.6359 0.6359
45 Michael Moss 0 13 0.6359 0.6359
48 Bradley Hobson 1 12 0.6851 0.6324
49 Karen Richardson 1 13 0.6308 0.6308
49 Trevor Macgavin 1 13 0.6308 0.6308
51 Patrick Tynan 1 12 0.6778 0.6257
52 Cade Martinez 0 13 0.6256 0.6256
52 Diance Durand 1 13 0.6256 0.6256
52 Jonathon Leslein 0 13 0.6256 0.6256
52 Ramar Williams 0 13 0.6256 0.6256
56 David Dupree 0 12 0.6740 0.6222
57 William Schouviller 1 12 0.6722 0.6205
58 Kristen White 0 13 0.6154 0.6154
58 Matthew Olguin 0 13 0.6154 0.6154
58 Rachel Follo 1 13 0.6154 0.6154
58 Vincent Scannelli 0 13 0.6154 0.6154
62 Thomas Brenstuhl 1 12 0.6648 0.6137
63 Daniel Halse 0 12 0.6630 0.6120
64 Melissa Printup 0 13 0.6103 0.6103
65 Jennifer Bouland 0 12 0.6592 0.6085
65 Karen Coleman 0 12 0.6592 0.6085
67 Daniel Major 0 12 0.6556 0.6052
68 Michelle Fraterrigo 0 12 0.6480 0.5982
69 Earl Dixon 0 12 0.6464 0.5967
70 Wayne Schofield 1 13 0.5949 0.5949
71 Zechariah Ziebarth 0 12 0.6409 0.5916
72 Gary Lawrence 1 13 0.5846 0.5846
73 Cheryl Brown 0 12 0.6278 0.5795
74 Jared Kaanga 0 12 0.6257 0.5776
75 Jeffrey Zornes 0 12 0.6243 0.5763
76 Nicholas Cinco 0 11 0.6810 0.5762
77 Christopher Mulcahy 0 12 0.6188 0.5712
77 Joshua Tracey 1 12 0.6188 0.5712
79 Bryson Scott 0 11 0.6727 0.5692
80 Nicholas Nguyen 0 12 0.6089 0.5621
80 Terry Hardison 0 12 0.6089 0.5621
82 Erik Neumann 0 11 0.6627 0.5607
82 Robert Sokol 0 11 0.6626 0.5607
82 Travis Delagardelle 1 11 0.6627 0.5607
85 Bunnaro Sun 0 12 0.6044 0.5579
86 Jason Jackson 0 12 0.6034 0.5570
86 Louie Renew 1 12 0.6034 0.5570
88 Ryan Baum 0 11 0.6527 0.5523
89 Marcus Evans 0 12 0.5978 0.5518
90 George Mancini 0 11 0.6442 0.5451
91 Jack Wheeler 0 12 0.5856 0.5406
92 Michael Moore 1 11 0.6386 0.5404
93 Heather Kohler 0 10 0.6980 0.5369
94 Kyle May 0 12 0.5801 0.5355
95 Brian Patterson 0 11 0.6325 0.5352
96 Keisha Vasquez 1 11 0.6310 0.5339
97 James Small 0 11 0.6303 0.5333
98 Robert Lynch 0 12 0.5722 0.5282
99 Pamela Augustine 0 10 0.6846 0.5266
100 Brian Hollmann 1 10 0.6803 0.5233
101 Yiming Hu 0 11 0.6159 0.5211
102 Darvin Graham 0 11 0.6135 0.5191
103 Philip Driskill 1 10 0.6667 0.5128
104 Jonathan Smith 0 11 0.6000 0.5077
105 Clevante Granville 0 10 0.6531 0.5024
106 David Plate 0 10 0.6467 0.4975
107 Ronald Schmidt 0 11 0.5854 0.4953
108 Anthony Brinson 0 10 0.6424 0.4942
109 Paul Seitz 0 10 0.6419 0.4938
110 Paul Presti 0 10 0.6358 0.4891
111 Brandon Parks 0 10 0.6284 0.4834
112 Michael Linder 0 9 0.6957 0.4816
113 Noah Gosswiller 0 10 0.6174 0.4749
114 Robert Martin 0 11 0.5460 0.4620
115 Ryan Shipley 0 10 0.5973 0.4595
116 Anthony Rockemore 0 10 0.5933 0.4564
117 Jose Torres Mendoza 0 10 0.5894 0.4534
118 Matthew Blair 0 8 0.7350 0.4523
119 Steven Maisonneuve 1 8 0.7265 0.4471
120 Steward Hogans 0 9 0.6324 0.4378
121 Sheryl Claiborne-Smith 0 10 0.5638 0.4337
122 Amy Asberry 0 9 0.6232 0.4314
123 Richard Conkle 0 10 0.5526 0.4251
124 Steven Webster 0 10 0.5503 0.4233
125 Derrick Elam 0 9 0.6029 0.4174
126 Andrew Gray 0 11 0.4910 0.4155
127 Akilah Gamble 1 9 0.5746 0.3978
128 Tara Bridgett 0 8 0.6320 0.3889
129 Kenneth Nielsen 0 8 0.6260 0.3852
130 Megan Fitzgerald 0 8 0.6129 0.3772
131 Brittany Pillar 1 6 0.8023 0.3703
132 Jeremy Mounce 0 7 0.6731 0.3624
133 Desmond Jenkins 0 7 0.6168 0.3321
134 Gabriel Quinones 0 8 0.5246 0.3228
135 Thomas Cho 0 7 0.5888 0.3170
136 Joseph Martin 0 7 0.5607 0.3019
137 Jordan Forwood 0 6 0.6277 0.2897
138 Jonathan Knight 0 6 0.6022 0.2779
139 Jay Kelly 0 7 0.5140 0.2768
140 Kevin Green 0 6 0.5978 0.2759
141 Jason Miranda 0 6 0.5824 0.2688
142 Jennifer Wilson 0 6 0.5806 0.2680
143 Jamie Ainsleigh-Wong 0 6 0.5217 0.2408
144 David Hadley 0 5 0.6104 0.2348
145 Wayne Gokey 0 5 0.6026 0.2318
146 Ashley Johnson 0 6 0.4831 0.2230
147 Min Choi 0 5 0.5526 0.2125
148 Ashlyn Dortch 0 5 0.4805 0.1848
149 Cherylynn Vidal 0 4 0.5938 0.1827
150 Lawrence Thuotte 1 4 0.5484 0.1687
151 Jeremy Krammes 0 3 0.6957 0.1605
152 Vincent Kandian 0 4 0.5000 0.1538
153 George Hall 0 3 0.6522 0.1505
154 Donald Park 0 3 0.5435 0.1254
155 Terrence Lee 0 2 0.6897 0.1061
156 Adam Konkle 0 2 0.5938 0.0914
156 Jeffrey Dusza 0 2 0.5938 0.0914
158 David Kim 0 2 0.5312 0.0817
158 Monte Henderson 0 2 0.5312 0.0817
160 Gabrieal Feiling 0 2 0.4688 0.0721
161 Clayton Grimes 0 1 0.8750 0.0673
162 Tanaysa Henderson 0 1 0.8571 0.0659
163 Brian Holder 0 1 0.7500 0.0577
163 Sandra Carter 0 1 0.7500 0.0577
163 Wallace Savage 0 1 0.7500 0.0577
166 Ryan Wiggins 0 1 0.7333 0.0564
167 Daniel Gray 0 1 0.6875 0.0529
168 Antonio Chapa 0 1 0.5000 0.0385
168 Zachary Brosemer 0 1 0.5000 0.0385
170 Jasprin Smith 0 1 0.3750 0.0288
170 Robert Epps 0 1 0.3750 0.0288

Data

---
title: "2024 NFL Moneyline Picks"
output: 
  flexdashboard::flex_dashboard:
    theme:
      version: 4
      bootswatch: spacelab
    orientation: rows
    vertical_layout: fill
    social: ["menu"]
    source_code: embed
    navbar:
      - { title: "Created by: Daniel Baller", icon: "fa-github", href: "https://github.com/danielpballer"  }
---


```{r setup, include=FALSE}
#    source_code: embed
library(flexdashboard)
library(tidyverse)
library(data.table)
library(formattable)
library(ggpubr)
library(ggrepel)
library(gt)
library(glue)
library(ggthemes)
library(hrbrthemes)
library(sparkline)
library(plotly)
library(htmlwidgets)
library(mdthemes)
library(ggtext)
library(ggnewscale)
library(DT)
source("./Functions/functions2.R")

thematic::thematic_rmd(font = "auto")

```

```{r Reading in our picks files, include=FALSE}
current_week = 13 #Set what week it is
week_1 = read_csv("./CSV_Data_Files/2024 NFL Week 1.csv") %>% 
  mutate(Name = str_to_title(Name))
week_2 = read_csv("./CSV_Data_Files/2024 NFL Week 2.csv")%>% 
  mutate(Name = str_to_title(Name))
week_3 = read_csv("./CSV_Data_Files/2024 NFL Week 3.csv")%>% 
  mutate(Name = str_to_title(Name))
week_4 = read_csv("./CSV_Data_Files/2024 NFL Week 4.csv")%>%
 mutate(Name = str_to_title(Name))
week_5 = read_csv("./CSV_Data_Files/2024 NFL Week 5.csv")%>% 
  mutate(Name = str_to_title(Name))
week_6 = read_csv("./CSV_Data_Files/2024 NFL Week 6.csv")%>% 
  mutate(Name = str_to_title(Name))
week_7 = read_csv("./CSV_Data_Files/2024 NFL Week 7.csv")%>% 
  mutate(Name = str_to_title(Name))
week_8 = read_csv("./CSV_Data_Files/2024 NFL Week 8.csv")%>% 
  mutate(Name = str_to_title(Name))
 week_9 = read_csv("./CSV_Data_Files/2024 NFL Week 9.csv")%>% 
  mutate(Name = str_to_title(Name))
week_10 = read_csv("./CSV_Data_Files/2024 NFL Week 10.csv")%>% 
  mutate(Name = str_to_title(Name))
week_11 = read_csv("./CSV_Data_Files/2024 NFL Week 11.csv")%>% 
  mutate(Name = str_to_title(Name))
week_12 = read_csv("./CSV_Data_Files/2024 NFL Week 12.csv")%>% 
  mutate(Name = str_to_title(Name))
week_13 = read_csv("./CSV_Data_Files/2024 NFL Week 13.csv")%>% 
  mutate(Name = str_to_title(Name))
# week_14 = read_csv("./CSV_Data_Files/2024 NFL Week 14.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_15 = read_csv("./CSV_Data_Files/2024 NFL Week 15.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_16 = read_csv("./CSV_Data_Files/2024 NFL Week 16.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_17 = read_csv("./CSV_Data_Files/2024 NFL Week 17.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_18 = read_csv("./CSV_Data_Files/2024 NFL Week 18.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_19 = read_csv("./CSV_Data_Files/2024 NFL Wild Card.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_20 = read_csv("./CSV_Data_Files/2024 NFL Divisional Round.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_21 = read_csv("./CSV_Data_Files/2024 NFL Conference Round.csv")%>% 
#  mutate(Name = str_to_title(Name))
# week_22 = read_csv("./CSV_Data_Files/2024 NFL Super Bowl.csv")%>% 
#  mutate(Name = str_to_title(Name))

#reading in scores
Scores = read_csv(glue::glue("./CSV_Data_Files/NFL_Scores_{current_week}.csv")) 

#reading in CBS Prediction Records
cbs = read_csv(glue::glue("./CSV_Data_Files/CBS_Experts_{current_week}.csv")) %>% 
  mutate(Percent = round(Percent,4))
cbs_season = read_csv(glue::glue("./CSV_Data_Files/CBS_Experts_Season_{current_week}.csv"))

#reading in ESPN Prediction Records
espn = read_csv(glue::glue("./CSV_Data_Files/ESPN_Experts_{current_week}.csv"))%>% 
  mutate(Percent = round(Percent,4))
espn_season = read_csv(glue::glue("./CSV_Data_Files/ESPN_Experts_Season_{current_week}.csv"))%>% 
  mutate(Percent = round(Percent,4))

#Odds not working for the 2024 season.  Need to fix scrape code for next year.
#Reading in the moneyline odds for each team and cleaning the team names
# odds_wk1 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_1.csv"))
# odds_wk2 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_2.csv"))
# odds_wk3 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_3.csv"))
# odds_wk4 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_4.csv"))
# odds_wk5 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_5.csv"))
# odds_wk6 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_6.csv"))
# odds_wk7 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_7.csv"))
# odds_wk8 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_8.csv"))
# odds_wk9 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_9.csv"))
# odds_wk10 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_10.csv"))
# odds_wk11 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_11.csv"))
# odds_wk12 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_12.csv"))
# odds_wk13 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_13.csv"))
# odds_wk14 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_14.csv"))
# odds_wk15 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_15.csv"))
# odds_wk16 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_16.csv"))
# odds_wk17 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_17.csv"))
# odds_wk18 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_18.csv"))
# odds_wk19 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_19.csv"))
# odds_wk20 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_20.csv"))
# odds_wk21 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_21.csv"))
# odds_wk22 = read_csv(glue::glue("./CSV_Data_Files/Moneyline_Odds_22.csv"))

####################UPDATE THESE###############################
inst.picks = list(week_1, week_2, week_3, week_4, week_5, week_6, week_7, week_8 , week_9, week_10, week_11, week_12, week_13) #, week_14, week_15, week_16, week_17 , week_18, week_19 , week_20, week_21, week_22) #add in the additional weeks
# odds = rbind(odds_wk1, odds_wk2, odds_wk3, odds_wk4, odds_wk5, odds_wk6, odds_wk7, odds_wk8,
#              odds_wk9, odds_wk10, odds_wk11, odds_wk12) #add in the additional weeks
####################END OF UPDATE##############################

weeks = as.list(seq(1:current_week)) #creating a list of each week number
```

```{r read in scores clean data, include=FALSE}
#Cleaning Odds Data
# cl_odds = odds_cleaning(odds)

#Cleaning scores data
Scores = cleaning2(Scores)

#creating a list of winners for each week
winners = map(weeks, weekly_winners)

#creating a vector of this weeks winners
this_week = pull(winners[[length(winners)]])  

#Getting the number of games for each week
weekly_number_of_games = map_dbl(weeks, week_number_games)
```

```{r Group Predictions, include=FALSE}
#Creating the list of everyones predictions each week.
games = map(inst.picks, games_fn)

#Creating the prediction table.  
pred_table = map(games, pred_table_fn)

#Adding who won to the predictions
with_winners = map2(pred_table, winners, adding_winners)

#Creating results for each week.
results = map2(with_winners,weekly_number_of_games, results_fn)
```


```{r Displaying Group Results, echo=FALSE}
#Displaying the group results

inst_group_table = results[[length(results)]] %>% gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("This Week's Predictions"),
    #subtitle = md(glue("Week {length(results)}"))
    ) %>% 
   tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(Correct),
      rows = Correct =="No"
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(Correct),
      rows = Correct =="Yes"
    )) %>% 
  tab_options(
    data_row.padding = px(3),
    container.height = "100%"
   )
```

```{r Weekly and season Group Results, include=FALSE}
# Printing the weekly and season win percentage     

#how many games correct, incorrect, and not picked each week
weekly_group_correct = map(results, weekly_group_correct_fn)  

#how many games were picked each week
weekly_games_picked = map2(weekly_group_correct, weekly_number_of_games, weekly_games_picked_fn)

#Calculating the number of correct picks for each week
weekly_group_correct_picks = map(weekly_group_correct, weekly_group_correct_picks_fn)

# Code to manually hard code in week where we get 0 games correct
# ##### Remove this line before next season 
# weekly_group_correct_picks[[21]]=0

#Calculating weekly win percentage
weekly_win_percentage = map2(weekly_group_correct_picks, weekly_games_picked, weekly_win_percentage_fn)

#Calculating season win percentage
season_win_percentage = round(sum(unlist(weekly_group_correct_picks))/sum(unlist(weekly_games_picked)),4)

#Calculating number of games picked this season
season_games = sum(unlist(weekly_games_picked))

#calculating season wins
season_wins = sum(unlist(weekly_group_correct_picks))

#calculating the number of people who picked this week
Total = dim(inst.picks[[length(weeks)]])[1]
```

```{r plotting group results, include=FALSE}
#Previous Weeks
group_season_for_plotting = unlist(weekly_win_percentage) %>% as.data.frame() %>% 
  rename(`Win Percentage` = ".") %>% 
  add_column(Week = unlist(weeks))
```

```{r Plotting the group results, echo=FALSE}
inst_group_season_plot = group_season_for_plotting %>% 
ggplot(aes(x = as.factor(Week), y = `Win Percentage`))+
  geom_point()+
  geom_path(aes(x = Week))+
  ylim(c(0, 1)) +
  xlab("NFL Week") + 
  ylab("Correct Percentage")+
  ggtitle("Weekly Group Correct Percentage")+
  theme_classic()+
  theme(plot.title = element_text(hjust = 0.5, size = 18))
```

```{r beating cbs week, include=FALSE}
#Creating a list of correct percentages for each week.
cbs_weekly_percent = map(weeks, cbs_percent)

#Creating a list of how many cbs experts we beat each week.
cbs_experts_beat = map2(cbs_weekly_percent, weekly_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
cbs_experts_total = map(cbs_weekly_percent, experts_tot)
```

```{r beating cbs season, include=FALSE}
#Creating a list of correct percentages for each week.
cbs_season_percent = map(weeks, cbs_season_percent)

#Creating a list of how many cbs experts we beat each week.
cbs_experts_beat_season = map2(cbs_season_percent, season_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
cbs_experts_season_total = map(cbs_season_percent, experts_tot)
```

```{r beating ESPN week, include=FALSE}
#Creating a list of correct percentages for each week.
espn_weekly_percent = map(weeks, espn_percent)

#Creating a list of how many cbs experts we beat each week.
espn_experts_beat = map2(espn_weekly_percent, weekly_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
espn_experts_total = map(espn_weekly_percent, experts_tot)
```

```{r beating ESPN season, include=FALSE}
#Creating a list of correct percentages for each week.
espn_season_percent = map(weeks, espn_season_percent)

#Creating a list of how many cbs experts we beat each week.
espn_experts_beat_season = map2(espn_season_percent, season_win_percentage, experts_beat)

#Creating a list of how many cbs experts picked each week.  
espn_experts_season_total = map(espn_season_percent, experts_tot)
```

```{r individual results, include=FALSE}
#Creating a list of individual results for each week.
weekly_indiv = pmap(list(inst.picks, winners, weeks), indiv_weekly_pred)

#Combining each week into one dataframe and calculating percentage Correct for this week.  
full_season = weekly_indiv %>% reduce(full_join, by = "Name") %>% 
  mutate(Percent = round(pull(.[,ncol(.)]/weekly_number_of_games[[length(weekly_number_of_games)]]),4)) 

#Creating a dataframe with only the weekly picks
a = full_season %>% select(starts_with("Week"))

#Creating a vector of how many weeks each person picked over the season
tot_week = NULL
help = NULL
for (i in 1:dim(a)[1]){
  for(j in 1:length(a)){
    help[j] = ifelse(is.na(a[i,j])==T,0,1)
    tot_week[i] = sum(help)
  }
}

#Creating a vector of how many games each person picked over the season
tot_picks= NULL
help = NULL
for (i in 1:dim(a)[1]){
  for(j in 1:length(a)){
    help[j] = unlist(weekly_games_picked)[j]*ifelse(is.na(a[i,j])==T,0,1)
    tot_picks[i] = sum(help)
  }
}

#Creatign a vector of how many games each person picked correct over the season
tot_correct = NULL
help = NULL
for (i in 1:dim(a)[1]){
  tot_correct[i] = sum(a[i,], na.rm = T)
}

#adding how many weeks each person picked, season correct percentage, and adjusted season percentag to the data frame and sorting the data
indiv_disp = full_season %>% add_column(`Weeks Picked` = tot_week) %>%
  add_column(tot_correct)%>%
  add_column(tot_picks)%>%
  mutate(`Season Percent` = round(tot_correct/tot_picks,4))%>%
  mutate(`Adj Season Percent` = round(`Season Percent`*(tot_week/length(a)),4)) %>%
  select(-tot_correct, -tot_picks) %>%
  arrange(desc(Percent), desc(`Season Percent`)) %>%
  mutate(Percent = ifelse(is.na(Percent)==T, 0, Percent))
```


```{r individual percentages, include=FALSE}
#Calculating individual percentages for each week.
weekly_indiv_percent = map2(weekly_indiv, as.list(weekly_number_of_games), indiv_percent) %>% reduce(full_join, by = "Name")

weekly_indiv_percent_plot = weekly_indiv_percent %>% 
  pivot_longer(cols = starts_with("Week"), names_to = "Week", values_to = "Percent")%>%
  mutate(Percent = ifelse(is.na(Percent)==T, 0, Percent)) %>% 
  mutate(Week = as.factor(Week))

levels = NULL
for(i in 1:length(weeks)){
  levels[i] = glue("Week {i}")  
}

weekly_indiv_percent_plot = weekly_indiv_percent_plot %>%
  mutate(Week = factor(Week, levels))
```

```{r sparklines, include=FALSE}
#adding sparklines
plot_group = function(name, df){
  plot_object = 
    ggplot(data = df,
           aes(x = as.factor(Week), y=Percent, group = 1))+
    geom_path(size = 7)+
    scale_y_continuous(limits = c(0,1))+
    theme_void()+
    theme(legend.position = "none")
  return(plot_object)
}

sparklines = 
  weekly_indiv_percent_plot %>% 
  group_by(Name) %>% 
  nest() %>% 
  mutate(plot = map2(Name, data, plot_group)) %>% 
  select(-data)
  
indiv_disp_2 = indiv_disp %>% 
  inner_join(sparklines, by = "Name") %>% 
  mutate(`Season Trend` = NA)
```

```{r Printing Individual Table2, echo=FALSE}
# Printing the individual Table
indiv_table = indiv_disp_2 %>% gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Individual Results"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
   tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(Percent),
      rows = Percent<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(Percent),
      rows = Percent>.5
    )) %>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(indiv_disp_2$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(c(plot))

indiv_winners = indiv_disp_2 %>% filter(Percent == max(Percent)) %>% select(Name) %>% pull() %>% paste(collapse = ", ")
indiv_season = indiv_disp_2 %>% filter(`Season Percent` == max(`Season Percent`)) %>% select(Name) %>% pull() %>% paste(collapse = ", ")
indiv_season_adj = indiv_disp_2 %>% filter(`Adj Season Percent` == max(`Adj Season Percent`)) %>% select(Name) %>% pull()%>% paste(collapse = ", ")
```

```{r Printing Season Leaderboard, echo=FALSE}
# Printing the Season Leaderboard
  
season_leaderboard_disp = indiv_disp_2 %>% select(Name, starts_with("Week ")) %>% 
  pivot_longer(starts_with("Week"),names_to = "Week", values_to = "Correct") %>% 
  group_by(Week) %>% 
  mutate(Correct = case_when(is.na(Correct)==T~0, 
                             TRUE~Correct)) %>% 
  mutate(Donut = case_when(Correct==max(Correct)~1,
                           TRUE~0))  %>% 
  ungroup() %>% 
  group_by(Name) %>% 
  summarise(`Donuts Won` = sum(Donut)) %>% 
  #mutate(`Donuts Won` = strrep("award,", Donuts)) %>% 
  right_join(.,indiv_disp_2) %>% 
  select(-starts_with("Week "), -Percent) %>% 
  mutate(`Season Rank` = min_rank(desc(`Season Percent`)),.before = Name) %>% 
  arrange(`Season Rank`) 
  
season_leaderboard = season_leaderboard_disp %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Season Leaderboard (Season Percent)"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
  # fmt_icon(
  #   columns = `Donuts Won`,
  #   fill_color = "gold",
  # ) %>%
  tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(season_leaderboard_disp$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(columns = c(plot))
```

```{r Printing Adj Season Leaderboard, echo=FALSE}
# Printing the Adj Season Leaderboard
  
adj_season_leaderboard_disp = indiv_disp_2 %>% select(Name, starts_with("Week ")) %>% 
  pivot_longer(starts_with("Week"),names_to = "Week", values_to = "Correct") %>% 
  group_by(Week) %>% 
  mutate(Correct = case_when(is.na(Correct)==T~0, 
                             TRUE~Correct)) %>% 
  mutate(Donut = case_when(Correct==max(Correct)~1,
                           TRUE~0))  %>% 
  ungroup() %>% 
  group_by(Name) %>% 
  summarise(`Donuts Won` = sum(Donut)) %>% 
  #mutate(`Donuts Won` = strrep("award,", Donuts)) %>% 
  right_join(.,indiv_disp_2) %>% 
  select(-starts_with("Week "), -Percent) %>% 
  mutate(`Season Rank` = min_rank(desc(`Adj Season Percent`)),.before = Name) %>% 
  arrange(`Season Rank`)

adj_season_leaderboard = adj_season_leaderboard_disp %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("Season Leaderboard (Adjusted Season Percent)"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
  # fmt_icon(
  #   columns = `Donuts Won`,
  #   fill_color = "gold",
  # ) %>%
  tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Season Percent`),
      rows = `Season Percent`>.5
    ))%>% 
     tab_style(
    style = cell_text(color = "red", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`<.5
    )) %>% 
   tab_style(
    style = cell_text(color = "green", weight = "bold"),
    locations = cells_body(
      columns = c(`Adj Season Percent`),
      rows = `Adj Season Percent`>.5
    )) %>% 
  tab_options(
    container.width = pct(100),
    data_row.padding = px(1),
    container.height = "100%"
   ) %>%
    tab_spanner(
    label = "Weekly # Correct",
    columns = starts_with(c("Week "))
  ) %>% 
  text_transform(
    locations = cells_body(c(`Season Trend`)),
    fn = function(x){
      map(adj_season_leaderboard_disp$plot, ggplot_image, height = px(30), aspect_ratio = 4)
                 }) %>%
  cols_hide(columns = c(plot))
```


```{r instructor formattable, echo=FALSE}
improvement_formatter <- 
  formatter("span", 
            style = x ~ formattable::style(
              font.weight = "bold", 
              color = ifelse(x > .5, "green", ifelse(x < .5, "red", "black"))),
             x ~ icontext(ifelse(x == max(x), "star", ""), x))

indiv_disp_3 = indiv_disp_2 %>% select(-plot)
indiv_disp_3$`Season Trend` = apply(indiv_disp_3[,2:(1+length(weeks))], 1, FUN = function(x) as.character(htmltools::as.tags(sparkline(as.numeric(x), type = "line", chartRangeMin = 0, chartRangeMax = 1, fillColor = "white"))))

indiv_table_2 = as.htmlwidget(formattable(indiv_disp_3, 
                                align = c("l", rep("c", NROW(indiv_disp_3)-1)),
              list(`Season Percent` = color_bar("#FA614B"),
              `Season Percent`= improvement_formatter,
              `Adj Season Percent`= improvement_formatter)))
              
indiv_table_2$dependencies = c(indiv_table_2$dependencies, htmlwidgets:::widget_dependencies("sparkline", "sparkline"))
```

```{r Plotting individual results over the season2, eval=FALSE, include=FALSE, out.width="100%"}
#Creating the individual plot.  
inst_indiv_plots = weekly_indiv_percent_plot %>% 
  ggplot(aes(x = factor(Week), y = Percent, color = Name))+
  geom_point()+
  geom_path(aes(x = as.factor(Week), y = Percent, color = Name, 
                group = Name))+
  ylim(c(0, 1)) +
  labs(x = "NFL Week", 
       y = "Correct Percentage", 
       title = "Weekly Individual Correct Percentage")+
  facet_wrap(~Name)+
  theme_classic()+
  theme(legend.position = "none",
        plot.title = element_text(hjust = 0.5, size = 18),
        axis.text.x=element_text(angle =45, vjust = 1, hjust = 1))
```

```{r data for data page}
inst.data = map2(inst.picks, weeks, disp_data) %>% bind_rows()
```


```{r fivethirtyeight}
inst_538 = map(results, five38) %>% unlist() %>% sum()
```

```{r pregame, eval=FALSE, include=FALSE}
#Predictions for the week

#Creating the list of group predictions each week.
games = map(inst.picks, games_fn)

#Creating the prediction table.  
pred_table = map(games, pred_table_fn)

#Printing table of instructor predictions
pred_table[[length(pred_table)]] %>% mutate(Game = row_number()) %>% 
  rename(`Votes For` = votes_for, `Votes Against` = votes_against) %>% 
  gt() %>% 
  cols_align(
    align = "center") %>% 
   tab_header(
    title = md("This Week's Predictions"),
    subtitle = md(glue("Week {length(weeks)}"))
    ) %>% 
   tab_options(
    data_row.padding = px(3)
   )
```

Group Predictions
==========================================================================

Sidebar {.sidebar} 
-------------------------------------
#### CBS Sports

<font size="4">

This week we beat or tied `r cbs_experts_beat[[length(weeks)]]` of `r cbs_experts_total[[length(weeks)]]` CBS Sports' Experts.

For the season we are currently beating or tied with `r cbs_experts_beat_season[[length(weeks)]]` of `r cbs_experts_season_total[[length(weeks)]]` CBS Sports' Experts.
 
 </font>


#### ESPN

<font size="4">

We also beat or tied `r espn_experts_beat[[length(weeks)]]` of `r espn_experts_total[[length(weeks)]]` ESPN Experts.
 
For the season we are currently beating or tied with `r espn_experts_beat_season[[length(weeks)]]` of `r espn_experts_season_total[[length(weeks)]]` ESPN Experts.

</font>

Row
--------------------------------------

### Win percentage for the week

```{r}
inst_rate <- weekly_win_percentage[[length(weekly_win_percentage)]]*100
gauge(inst_rate, min = 0, max = 100, symbol = '%', gaugeSectors(
  success = c(55, 100), warning = c(40, 54), danger = c(0, 39)
))
```

### Season Win Percentage

```{r}
inst_season <- season_win_percentage*100
gauge(inst_season, min = 0, max = 100, symbol = '%', gaugeSectors(
  success = c(55, 100), warning = c(40, 54), danger = c(0, 39)
))
```

### Games Correct
```{r}
valueBox(value = season_wins,icon = "fa-trophy",caption = "Correct Games this Season")
```

### Games Picked
```{r}
valueBox(value = season_games,icon = "fa-clipboard-list",caption = "Games Picked this Season")
```

### Number of predictions
```{r}
valueBox(value = Total,icon = "fa-users",caption = "Predictions this week")
```

Row
--------------------------------------

### 

```{r}
inst_group_table
```

### 

```{r}
ggplotly(inst_group_season_plot) %>% 
  layout(title = list(y = .93, xref = "plot"),
         margin = list(t = 40))
```

Individual Predictions
==========================================================================


Sidebar {.sidebar} 
-------------------------------------

#### Best Picks of the Week.

<font size="4">

 `r indiv_winners`
 
 </font>
 
#### Best Season Correct Percentage
<font size="4">

`r indiv_season`
 
 </font>

#### Best Adjusted Season Correct Percentage
<font size="4">

`r indiv_season_adj`

 * Adjusted season percentage accounts for the number of weeks picked.
 
 </font>

row {.tabset}
--------------------------------------

### Individual Table
```{r}
indiv_table
```

<!--
### Individual Table2

```{r, out.height="100%"}
indiv_table_2
```

-->

<!--

### Individual Plots
```{r, out.width="100%"}
#ggplotly(inst_indiv_plots)
```

-->

### Season Leaderboard
```{r, out.width="100%"}
season_leaderboard
```

### Adjusted Season Leaderboard
```{r, out.width="100%"}
adj_season_leaderboard
```

Data
==========================================================================

```{r}
datatable(
  inst.data, extensions = 'Buttons', options = list(
    dom = 'Blfrtip',
    buttons = c('copy', 'csv', 'excel', 'pdf', 'print'),
    lengthMenue = list( c(10, 25, 50, 100, -1), c(10, 25, 50, 100, "All") )
  )
)
```